<html>
<head>
    <meta charset="UTF-8" content="#">
    <title>销售商品页面</title>
    <!-- 引入CSS -->
    <link rel="stylesheet" type="text/css"
          href="/easyui/themes/default/easyui.css">
    <link rel="stylesheet" type="text/css" href="/easyui/themes/icon.css">
    <link rel="stylesheet" type="text/css" href="/easyui/css/demo.css">
    <!-- 引入JS -->
    <script type="text/javascript" src="/easyui/jquery.min.js"></script>
    <script type="text/javascript" src="/easyui/jquery.easyui.min.js"></script>
    <script type="text/javascript" src="/easyui/themes/locale/easyui-lang-zh_CN.js"></script>
    <script type="text/javascript" src="/easyui/js/validateExtends.js"></script>
    <script type="text/javascript" src="/common/js/common.js"></script>
    <script type="text/javascript" src="/common/js/order.js"></script>
    <script type="text/javascript" src="/common/js/status.js"></script>
    <script type="text/javascript">
        //DOM加载完成后执行的回调函数
        $(function () {

            $.post("/tech-person/getTechGroupResults",{selected:false},function (data) {
                $('#search-techGroup').combobox({
                    textField: 'content',
                    valueField: 'value',
                    panelHeight: 'auto',
                    data: data
                })
            })

            var table;
            //初始化datagrid
            $('#dataList').datagrid({
                iconCls: 'icon-more',//图标
                border: true,
                collapsible: false,//是否可折叠
                fit: true,//自动大小
                method: "post",
                url: "/sale-item/getSaleItems?t" + new Date().getTime(),
                idField: 'id',
                singleSelect: false,//是否单选
                rownumbers: true,//行号
                pagination: true,//分页控件
                remoteSort: false,
                columns: [
                    [
                        {field: 'chk', checkbox: true, width: 50},
                        {field: 'id', title: 'ID', width: 50},
                        {field: 'techGroup', title: '技术组', width: 60},
                        {
                            field: 'status', title: '状态', width: 80,
                            formatter: function (value, row, index) {
                                return getSaleItemStatus(value);
                            }
                        },
                        {field: 'itemCode', title: '商品编码', width: 100},
                        {field: 'itemName', title: '商品描述', width: 150},
                        {field: 'itemPrice', title: '销售价格', width: 80},
                        {field: 'bomPrice', title: 'Bom成本', width: 80},
                        {field: 'unit', title: '单位', width: 40},
                        {field: 'remark', title: '备注', width: 150},
                        {
                            field: 'createTime', title: '创建时间', width: 165,
                            formatter: function (value, row, index) {
                                return transTimeHasWeek(value);
                            }
                        },
                        {
                            field: 'updateTime', title: '更新时间', width: 165,
                            formatter: function (value, row, index) {
                                return transTimeHasWeek(value);
                            }
                        },
                    ]
                ],
                toolbar: "#toolbar"//工具栏
            });

            //设置分页控件
            var p = $('#dataList').datagrid('getPager');
            $(p).pagination({
                pageSize: 20,//设置每页显示的记录条数,默认为
                pageList: [10, 20, 30, 50, 100],//设置每页记录的条数
                beforePageText: '第',
                afterPageText: '页    共 {pages} 页',
                displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录',
            });


            //信息删除按钮事件
            $("#delete").click(function () {
                var selectRows = $("#dataList").datagrid("getSelections");//返回所有选中的行,当没有选中的记录时,将返回空数组
                var selectLength = selectRows.length;
                if (selectLength === 0) {
                    $.messager.alert("消息提醒", "请选择想要删除的数据哟!", "warning");
                } else {
                    var ids = [];
                    $(selectRows).each(function (i, row) {
                        ids[i] = row.id;//将预删除行的id存储到数组中
                    });
                    $.messager.confirm("消息提醒", "删除后将无法恢复该商品信息! 确定继续?", function (r) {
                        if (r) {
                            $.ajax({
                                type: "post",
                                url: "/sale-item/deleteSaleItems?t" + new Date().getTime(),
                                data: {ids: ids},
                                dataType: 'json',
                                success: function (data) {
                                    if (data.success) {
                                        $.messager.alert("消息提醒", "删除成功啦!", "info");
                                        $("#dataList").datagrid("reload");//刷新表格
                                        $("#dataList").datagrid("uncheckAll");//取消勾选当前页所有的行
                                    } else {
                                        $.messager.alert("消息提醒", "服务器端发生异常! 删除失败!", "warning");
                                    }
                                }
                            });
                        }
                    });
                }
            });

            //信息添加按钮事件
            $("#add").click(function () {
                $("#addTable").form("clear");//清空表单数据
                $("#addDialog").dialog("open");//打开添加窗口
                $.post("/tech-person/getTechGroupResults",{selected:false},function (data) {
                    if (data == null) {
                        $.messager.alert("警告", "请先添加技术人员", "warning");
                        return false;
                    }
                    $('#add_techGroup').combobox({
                        textField: 'content',
                        valueField: 'value',
                        panelHeight: 'auto',
                        data: data,
                        editable:false
                    })

                })
            });

            //设置添加商品信息窗口
            $("#addDialog").dialog({
                title: "添加商品信息窗口",
                width: 440,
                height: 500,
                iconCls: "icon-house",
                modal: true,
                collapsible: false,
                minimizable: false,
                maximizable: false,
                draggable: true,
                deleted: true,
                closed: true,
                buttons: [
                    {
                        text: '添加',
                        plain: true,
                        iconCls: 'icon-add',
                        handler: function () {
                            var validate = $("#addForm").form("validate");
                            var validate = true;
                            if (!validate) {
                                $.messager.alert("消息提醒", "请检查你输入的数据哟!", "warning");
                            } else {
                                var data = $("#addForm").serialize();//序列化表单信息
                                $.ajax({
                                    type: "post",
                                    url: "/sale-item/addSaleItem?t" + new Date().getTime(),
                                    data: data,
                                    dataType: 'json',
                                    success: function (data) {
                                        if (data.success) {
                                            $("#addDialog").dialog("close"); //关闭窗口
                                            $('#dataList').datagrid("reload");//重新刷新页面数据
                                            $.messager.alert("消息提醒", "添加成功啦!", "info");
                                        } else {
                                            $.messager.alert("消息提醒", data.msg, "warning");
                                        }
                                    }
                                });
                            }
                        }
                    },
                    {
                        text: '关闭',
                        plain: true,
                        iconCls: 'icon-error',
                        handler: function () {
                            $("#addDialog").dialog("close");//关闭添加窗口
                        }
                    }
                ]
            });

            //信息修改按钮事件
            $("#update").click(function () {
                var selectRows = $("#dataList").datagrid("getSelections");
                if (selectRows.length !== 1) {
                    $.messager.alert("消息提醒", "请单条选择想要修改的数据哟!", "warning");
                } else {
                    $("#updateDialog").dialog("open");
                    var group = selectRows[0].techGroup;
                    $.post("/tech-person/getTechGroups", {group: group}, function (data) {
                        if (data == null) {
                            $.messager.alert("警告", "请先添加技术人员", "warning");
                            return false;
                        }
                        $('#update_techGroup').combobox({
                            textField: 'content',
                            valueField: 'value',
                            panelHeight: 'auto',
                            data: data
                        })

                    })
                }
            });

            //设置编辑商品信息窗口
            $("#updateDialog").dialog({
                title: "修改商品信息窗口",
                width: 440,
                height: 500,
                iconCls: "icon-house",
                modal: true,
                collapsible: false,
                minimizable: false,
                maximizable: false,
                draggable: true,
                deleted: true,
                closed: true,
                buttons: [
                    {
                        text: '提交',
                        plain: true,
                        iconCls: 'icon-update',
                        handler: function () {
                            var validate = $("#updateForm").form("validate");
                            if (!validate) {
                                $.messager.alert("消息提醒", "请检查你输入的数据哟!", "warning");
                            } else {
                                var data = $("#updateForm").serialize();//序列化表单信息
                                $.ajax({
                                    type: "post",
                                    url: "/sale-item/updateSaleItem?t=" + new Date().getTime(),
                                    data: data,
                                    dataType: 'json',
                                    success: function (data) {
                                        if (data.success) {
                                            //关闭窗口
                                            $("#updateDialog").dialog("close");
                                            //重新刷新页面数据
                                            $('#dataList').datagrid("reload");
                                            $('#dataList').datagrid("uncheckAll");
                                            //用户提示
                                            $.messager.alert("消息提醒", "修改成功啦!", "info");
                                        } else {
                                            $.messager.alert("消息提醒", data.msg, "warning");
                                        }
                                    }
                                });
                            }
                        }
                    }, {
                        text: '关闭',
                        plain: true,
                        iconCls: 'icon-error',
                        handler: function () {
                            $("#updateDialog").dialog("close");//关闭添加窗口
                        }
                    }
                ],
                //打开窗口前先初始化表单数据(表单回显)
                onBeforeOpen: function () {
                    var selectRow = $("#dataList").datagrid("getSelected");
                    $("#update_id").val(selectRow.id);//初始化id值,需根据id更新商品信息
                    $("#update_itemCode").textbox('setValue', selectRow.itemCode);
                    $("#update_itemName").textbox('setValue', selectRow.itemName);
                    $("#update_itemPrice").textbox('setValue', selectRow.itemPrice);
                    $("#update_unit").textbox('setValue', selectRow.unit);
                    $("#update_techGroup").textbox('setValue', selectRow.techGroup);
                    $("#update_remark").textbox('setValue', selectRow.remark);
                }
            });

            $("#tech_confirm").click(function () {
                var selectRow = $("#dataList").datagrid("getSelected");
                var id = selectRow.id;
                var status = selectRow.status+1;
                if(selectRow.status==2){
                    $.messager.alert("消息提醒", "技术正在确认!", "info");
                    return false;
                }
                if(selectRow.status==3){
                    $.messager.alert("消息提醒", "技术已经确认!", "info");
                    return false;
                }
                $.post("/sale-item/updateSaleItemStatusById", {id: id, status: status}, function (data) {
                    if (data.success) {
                        //重新刷新页面数据
                        $('#dataList').datagrid("reload");
                        $('#dataList').datagrid("uncheckAll");
                        //用户提示
                        $.messager.alert("消息提醒", "交给技术确认中!", "info");
                    } else {
                        $.messager.alert("消息提醒", data.msg, "warning");
                    }
                })
            });

            $("#look_bom").click(function () {
                var selectRows = $("#dataList").datagrid("getSelections");
                if (selectRows.length !== 1) {
                    $.messager.alert("消息提醒", "请单条选择想要查看的数据哟!", "warning");
                } else {
                    if (selectRows[0].status == 1) {
                        $.messager.alert("消息提醒", getSaleItemStatus(selectRows[0].status), "warning");
                        return false;
                    }
                    if (selectRows[0].status == 2) {
                        $.messager.alert("消息提醒", getSaleItemStatus(selectRows[0].status), "warning");
                        return false;
                    }
                    $("#lookBomDialog").dialog("open");
                }
            });

            $("#lookBomDialog").dialog({
                title: "查看Bom信息窗口",
                width: 920,
                height: 700,
                padding: 0,
                iconCls: "icon-house",
                modal: true,
                collapsible: false,
                minimizable: false,
                maximizable: false,
                draggable: true,
                closed: true,
                buttons: [
                    {
                        text: '关闭',
                        plain: true,
                        iconCls: 'icon-error',
                        handler: function () {
                            $("#lookBomDialog").dialog("close");//关闭添加窗口
                        }
                    }
                ],
                //打开窗口前先初始化数据
                onBeforeOpen: function () {
                    var itemCode = $("#dataList").datagrid("getSelected").itemCode;
                    $("#lookBom_dataList").datagrid({
                        iconCls: 'icon-more',//图标
                        border: true,
                        collapsible: false,//是否可折叠
                        width: 900,
                        height:600,
                        method: "post",
                        url: "/tech-bom/lookTechBomsByItemCode?itemCode=" + itemCode,
                        idField: 'id',
                        singleSelect: false,//是否单选
                        rownumbers: true,//行号
                        remoteSort: false,
                        pagination: true,//分页控件
                        columns: [
                            [
                                {field: 'chk', checkbox: true, width: 50},
                                {field: 'thingCode', title: '物料编码', width: 150, sortable: true},
                                {field: 'thingName', title: '物料描述', width: 200, sortable: true},
                                {field: 'useCnt', title: '用量', width: 50, sortable: true},
                                {field: 'unit', title: '单位', width: 50, sortable: true},
                                {field: 'thingPrice', title: '价格', width: 100},
                                {
                                    field: 'subTotal', title: '小计', width: 100,
                                    formatter: function (value, row, index) {
                                        return getBomPriceSubTotal(row);
                                    }
                                },
                                {field: 'remark', title: '备注', width: 100, sortable: true}
                            ]
                        ]
                    });
                    // //设置分页控件
                    // var p = $('#lookBom_dataList').datagrid('getPager');
                    // $(p).pagination({
                    //     pageSize: 10,//设置每页显示的记录条数,默认为10
                    //     pageList: [10, 20, 30, 50, 100],//设置每页记录的条数
                    //     beforePageText: '第',
                    //     afterPageText: '页    共 {pages} 页',
                    //     displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录',
                    // });
                    // //得到总价
                    // var sum = getBomTotal($("#lookBom_dataList").datagrid("getData"));
                    // alert(sum)
                    // $("#item_total").textbox('setValue', sum);
                }
            });



            //学生与班级名搜索按钮的监听事件(将其值返回给Controller)
            $("#search-btn").click(function () {
                $('#dataList').datagrid('load', {
                    techGroup: $('#search-techGroup').combobox('getValue'),//获取商品技术组
                    itemName: $('#search-itemName').textbox('getValue'),//获取商品名称
                    itemCode: $('#search-itemCode').textbox('getValue')//获取商品编码
                });
            });

        });
    </script>
</head>
<body>

<!-- 学生列表信息 -->
<table id="dataList" cellspacing="0" cellpadding="0"></table>
<!-- 工具栏 -->
<div id="toolbar">
    <!-- 学生,班级名搜索域 -->
    <div style="margin-left: 10px;">
        <div style="float: left;"><a id="add" href="javascript:" class="easyui-linkbutton"
                                     data-options="iconCls:'icon-add',plain:true">添加商品</a></div>
        <div style="float: left;" class="datagrid-btn-separator"></div>

        <div style="float: left;"><a id="update" href="javascript:" class="easyui-linkbutton"
                                     data-options="iconCls:'icon-add',plain:true">修改商品</a></div>
        <div style="float: left;" class="datagrid-btn-separator"></div>

        <div style="float: left;"><a id="delete" href="javascript:" class="easyui-linkbutton"
                                     data-options="iconCls:'icon-add',plain:true">删除商品</a></div>
        <div style="float: left;" class="datagrid-btn-separator"></div>

        <div style="float: left;"><a id="tech_confirm" href="javascript:" class="easyui-linkbutton"
                                     data-options="iconCls:'icon-add',plain:true">交给技术确认</a></div>
        <div style="float: left;" class="datagrid-btn-separator"></div>

        <div style="float: left;"><a id="look_bom" href="javascript:" class="easyui-linkbutton"
                                     data-options="iconCls:'icon-add',plain:true">查看商品Bom</a></div>
        <div style="float: left;" class="datagrid-btn-separator"></div>

        <!-- 商品名称搜索框 -->
        <a href="javascript:" class="easyui-linkbutton"
           data-options="iconCls:'icon-user-student',plain:true">技术组</a>
        <select id="search-techGroup" class="easyui-combobox" style="width: 250px">
        </select>

        <a href="javascript:" class="easyui-linkbutton"
           data-options="iconCls:'icon-user-student',plain:true">商品编码</a>
        <input id="search-itemCode" class="easyui-textbox"/>

        <a href="javascript:" class="easyui-linkbutton"
           data-options="iconCls:'icon-user-student',plain:true">商品名称</a>
        <input id="search-itemName" class="easyui-textbox"/>

        <!-- 搜索按钮 -->
        <a id="search-btn" href="javascript:" class="easyui-linkbutton"
           data-options="iconCls:'icon-search',plain:true">搜索</a>
    </div>
</div>

<!-- 添加信息窗口 -->
<div id="addDialog" style="padding: 15px 0 0 55px;">
    <!-- 商品信息表单 -->
    <form id="addForm" method="post" action="#">
        <table id="addTable" style="border-collapse:separate; border-spacing:0 3px;" cellpadding="6">
            <tr>
                <td>技术组</td>
                <td>
                    <select id="add_techGroup" style="width: 200px; height: 30px;" class="easyui-combobox"
                            name="techGroup" data-options="required:true,editable:false,missingMessage:'记得填写技术组呦~'">
                    </select>
                </td>
            </tr>

            <tr>
                <td>商品编码</td>
                <td ><input id="add_itemCode" style="width: 200px; height: 30px;" class="easyui-textbox"
                                       type="text" name="itemCode"
                                       data-options="required:true, missingMessage:'请填写商品编码哟~'"/>
                </td>
            </tr>

            <tr>
                <td>商品描述</td>
                <td ><input id="add_itemName" style="width: 200px; height: 30px;" class="easyui-textbox"
                                       type="text" name="itemName"
                                       data-options="required:true, missingMessage:'请填写商品描述哟~'"/>
                </td>
            </tr>

            <tr>
                <td>商品价格</td>
                <td><input id="add_itemPrice" style="width: 200px; height: 30px;" class="easyui-textbox"
                                       type="text" name="itemPrice"/>
                </td>
            </tr>

            <tr>
                <td>单位</td>
                <td><input id="add_unit" style="width: 200px; height: 30px;" class="easyui-textbox"
                                       type="text" name="unit" data-options="required:true, missingMessage:'请填写商品描述单位哟~'"/>
                </td>
            </tr>


            <tr>
                <td>备注</td>
                <td ><input id="add_remark" style="width: 200px; height: 60px;"
                                       class="easyui-textbox"
                                       type="text" name="remark"
                                       data-options="multiline:true"/>
                </td>
            </tr>
        </table>
    </form>
</div>

<!-- 修改信息窗口 -->
<div id="updateDialog" style="padding: 20px 0 0 65px">
    <!-- 商品信息表单 -->
    <form id="updateForm" method="post" action="#">
        <!-- 获取被修改信息的学生id -->
        <input type="hidden" id="update_id" name="id"/>
        <table id="updateTable" style="border-collapse:separate; border-spacing:0 3px;" cellpadding="6">
        <tr>
            <td>技术组</td>
            <td>
                <select id="update_techGroup" style="width: 200px; height: 30px;" class="easyui-combobox"
                        name="techGroup" data-options="required:true,editable:false,missingMessage:'记得填写技术组呦~'">
                </select>
            </td>
        </tr>

        <tr>
            <td>商品编码</td>
            <td ><input id="update_itemCode" style="width: 200px; height: 30px;" class="easyui-textbox"
                                   type="text" name="itemCode"
                                   data-options="required:true, missingMessage:'请填写商品编码哟~'"/>
            </td>
        </tr>

        <tr>
            <td>商品描述</td>
            <td ><input id="update_itemName" style="width: 200px; height: 30px;" class="easyui-textbox"
                                   type="text" name="itemName"
                                   data-options="required:true, missingMessage:'请填写商品描述哟~'"/>
            </td>
        </tr>

        <tr>
            <td>商品价格</td>
            <td><input id="update_itemPrice" style="width: 200px; height: 30px;" class="easyui-textbox"
                                   type="text" name="itemPrice"/>
            </td>
        </tr>

        <tr>
            <td>单位</td>
            <td><input id="update_unit" style="width: 200px; height: 30px;" class="easyui-textbox"
                                   type="text" name="unit"  data-options="required:true, missingMessage:'请填写商品描述单位哟~'"/>
            </td>
        </tr>

        <tr>
            <td>备注</td>
            <td><input id="update_remark" style="width: 200px; height: 60px;"
                                   class="easyui-textbox"
                                   type="text" name="remark"
                                   data-options="multiline:true"/>
            </td>
        </tr>
        </table>
    </form>
</div>

<div id="lookBomDialog">
    <table id="lookBom_dataList"></table>
</div>


</body>
</html>